home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1999 August / SGI Freeware 1999 August.iso / dist / fw_xemacs.idb / usr / freeware / lib / xemacs-20.4 / lisp / edebug / cust-print.elc.z / cust-print.elc
Emacs Compiled Lisp  |  1998-05-21  |  11.1 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text


This file was processed as: Emacs Compiled Lisp (other/emacsCompiledLisp).
This format is not currently supported by dexvert.

ConfidenceProgramDetectionMatch TypeSupport
1% dexvert Emacs Compiled Lisp (other/emacsCompiledLisp) magic Unsupported
100% file Emacs/XEmacs v20 byte-compiled Lisp data default
99% file data default
100% TrID Emacs/XEmacs byte-compiled Lisp (generic) default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 3b 45 4c 43 14 00 00 00 | 0a 3b 3b 3b 20 63 6f 6d |;ELC....|.;;; com|
|00000010| 70 69 6c 65 64 20 62 79 | 20 6a 75 73 74 69 6e 62 |piled by| justinb|
|00000020| 40 65 62 6f 6e 79 2e 63 | 72 61 79 2e 63 6f 6d 20 |@ebony.c|ray.com |
|00000030| 6f 6e 20 4d 6f 6e 20 4d | 61 72 20 20 39 20 31 32 |on Mon M|ar 9 12|
|00000040| 3a 34 38 3a 30 30 20 31 | 39 39 38 0a 3b 3b 3b 20 |:48:00 1|998.;;; |
|00000050| 66 72 6f 6d 20 66 69 6c | 65 20 2f 68 6f 6d 65 2f |from fil|e /home/|
|00000060| 61 73 70 65 6e 30 37 2f | 6a 75 73 74 69 6e 62 2f |aspen07/|justinb/|
|00000070| 72 6f 6f 74 73 2f 66 72 | 65 65 77 61 72 65 2f 78 |roots/fr|eeware/x|
|00000080| 65 6d 61 63 73 2f 32 30 | 2e 33 2f 78 65 6d 61 63 |emacs/20|.3/xemac|
|00000090| 73 2d 32 30 2e 33 2f 6c | 69 73 70 2f 65 64 65 62 |s-20.3/l|isp/edeb|
|000000a0| 75 67 2f 63 75 73 74 2d | 70 72 69 6e 74 2e 65 6c |ug/cust-|print.el|
|000000b0| 0a 3b 3b 3b 20 65 6d 61 | 63 73 20 76 65 72 73 69 |.;;; ema|cs versi|
|000000c0| 6f 6e 20 32 30 2e 34 20 | 22 45 6d 65 72 61 6c 64 |on 20.4 |"Emerald|
|000000d0| 22 20 58 45 6d 61 63 73 | 20 20 4c 75 63 69 64 2e |" XEmacs| Lucid.|
|000000e0| 0a 3b 3b 3b 20 62 79 74 | 65 63 6f 6d 70 20 76 65 |.;;; byt|ecomp ve|
|000000f0| 72 73 69 6f 6e 20 32 2e | 32 35 20 58 45 6d 61 63 |rsion 2.|25 XEmac|
|00000100| 73 3b 20 32 32 2d 4d 61 | 72 2d 39 36 2e 0a 3b 3b |s; 22-Ma|r-96..;;|
|00000110| 3b 20 6f 70 74 69 6d 69 | 7a 61 74 69 6f 6e 20 69 |; optimi|zation i|
|00000120| 73 20 6f 6e 2e 0a 3b 3b | 3b 20 74 68 69 73 20 66 |s on..;;|; this f|
|00000130| 69 6c 65 20 75 73 65 73 | 20 6f 70 63 6f 64 65 73 |ile uses| opcodes|
|00000140| 20 77 68 69 63 68 20 64 | 6f 20 6e 6f 74 20 65 78 | which d|o not ex|
|00000150| 69 73 74 20 69 6e 20 45 | 6d 61 63 73 20 31 39 2e |ist in E|macs 19.|
|00000160| 0a 0a 28 69 66 20 28 61 | 6e 64 20 28 62 6f 75 6e |..(if (a|nd (boun|
|00000170| 64 70 20 27 65 6d 61 63 | 73 2d 76 65 72 73 69 6f |dp 'emac|s-versio|
|00000180| 6e 29 0a 09 20 28 6f 72 | 20 28 61 6e 64 20 28 62 |n).. (or| (and (b|
|00000190| 6f 75 6e 64 70 20 27 65 | 70 6f 63 68 3a 3a 76 65 |oundp 'e|poch::ve|
|000001a0| 72 73 69 6f 6e 29 20 65 | 70 6f 63 68 3a 3a 76 65 |rsion) e|poch::ve|
|000001b0| 72 73 69 6f 6e 29 0a 09 | 20 20 20 20 20 28 73 74 |rsion)..| (st|
|000001c0| 72 69 6e 67 2d 6c 65 73 | 73 70 20 65 6d 61 63 73 |ring-les|sp emacs|
|000001d0| 2d 76 65 72 73 69 6f 6e | 20 22 32 30 22 29 29 29 |-version| "20")))|
|000001e0| 0a 20 20 20 20 28 65 72 | 72 6f 72 20 22 60 63 75 |. (er|ror "`cu|
|000001f0| 73 74 2d 70 72 69 6e 74 | 2e 65 6c 27 20 77 61 73 |st-print|.el' was|
|00000200| 20 63 6f 6d 70 69 6c 65 | 64 20 66 6f 72 20 45 6d | compile|d for Em|
|00000210| 61 63 73 20 32 30 22 29 | 29 0a 0a 28 6f 72 20 28 |acs 20")|)..(or (|
|00000220| 62 6f 75 6e 64 70 20 27 | 63 75 72 72 65 6e 74 2d |boundp '|current-|
|00000230| 6c 6f 61 64 2d 6c 69 73 | 74 29 20 28 73 65 74 71 |load-lis|t) (setq|
|00000240| 20 63 75 72 72 65 6e 74 | 2d 6c 6f 61 64 2d 6c 69 | current|-load-li|
|00000250| 73 74 20 6e 69 6c 29 29 | 0a 0a 0a 28 72 65 71 75 |st nil))|...(requ|
|00000260| 69 72 65 20 27 62 61 63 | 6b 71 75 6f 74 65 29 0a |ire 'bac|kquote).|
|00000270| 28 64 65 66 61 6c 69 61 | 73 20 27 64 65 66 61 6c |(defalia|s 'defal|
|00000280| 69 61 73 20 23 5b 28 73 | 79 6d 62 6f 6c 20 66 75 |ias #[(s|ymbol fu|
|00000290| 6e 63 29 20 22 08 09 4d | 87 22 20 5b 73 79 6d 62 |nc) "..M|." [symb|
|000002a0| 6f 6c 20 66 75 6e 63 5d | 20 32 5d 29 0a 28 62 79 |ol func]| 2]).(by|
|000002b0| 74 65 2d 63 6f 64 65 20 | 22 c0 c1 21 ac 84 c1 c2 |te-code |"..!....|
|000002c0| 4d 88 c0 87 22 20 5b 66 | 62 6f 75 6e 64 70 20 64 |M..." [f|boundp d|
|000002d0| 65 66 61 6c 69 61 73 20 | 66 73 65 74 5d 20 32 29 |efalias |fset] 2)|
|000002e0| 0a 23 40 34 39 32 20 2a | 43 6f 6e 74 72 6f 6c 73 |.#@492 *|Controls|
|000002f0| 20 68 6f 77 20 6d 61 6e | 79 20 6c 65 76 65 6c 73 | how man|y levels|
|00000300| 20 64 65 65 70 20 61 20 | 6e 65 73 74 65 64 20 64 | deep a |nested d|
|00000310| 61 74 61 20 6f 62 6a 65 | 63 74 20 77 69 6c 6c 20 |ata obje|ct will |
|00000320| 70 72 69 6e 74 2e 20 20 | 0a 0a 49 66 20 6e 69 6c |print. |..If nil|
|00000330| 2c 20 70 72 69 6e 74 69 | 6e 67 20 70 72 6f 63 65 |, printi|ng proce|
|00000340| 65 64 73 20 72 65 63 75 | 72 73 69 76 65 6c 79 20 |eds recu|rsively |
|00000350| 61 6e 64 20 6d 61 79 20 | 6c 65 61 64 20 74 6f 0a |and may |lead to.|
|00000360| 6d 61 78 2d 6c 69 73 70 | 2d 65 76 61 6c 2d 64 65 |max-lisp|-eval-de|
|00000370| 70 74 68 20 62 65 69 6e | 67 20 65 78 63 65 65 64 |pth bein|g exceed|
|00000380| 65 64 20 6f 72 20 61 6e | 20 65 72 72 6f 72 20 6d |ed or an| error m|
|00000390| 61 79 20 6f 63 63 75 72 | 3a 0a 60 41 70 70 61 72 |ay occur|:.`Appar|
|000003a0| 65 6e 74 6c 79 20 63 69 | 72 63 75 6c 61 72 20 73 |ently ci|rcular s|
|000003b0| 74 72 75 63 74 75 72 65 | 20 62 65 69 6e 67 20 70 |tructure| being p|
|000003c0| 72 69 6e 74 65 64 2e 27 | 0a 41 6c 73 6f 20 73 65 |rinted.'|.Also se|
|000003d0| 65 20 60 70 72 69 6e 74 | 2d 6c 65 6e 67 74 68 27 |e `print|-length'|
|000003e0| 20 61 6e 64 20 60 70 72 | 69 6e 74 2d 63 69 72 63 | and `pr|int-circ|
|000003f0| 6c 65 27 2e 0a 0a 49 66 | 20 6e 6f 6e 2d 6e 69 6c |le'...If| non-nil|
|00000400| 2c 20 63 6f 6d 70 6f 6e | 65 6e 74 73 20 61 74 20 |, compon|ents at |
|00000410| 6c 65 76 65 6c 73 20 65 | 71 75 61 6c 20 74 6f 20 |levels e|qual to |
|00000420| 6f 72 20 67 72 65 61 74 | 65 72 20 74 68 61 6e 20 |or great|er than |
|00000430| 60 70 72 69 6e 74 2d 6c | 65 76 65 6c 27 0a 61 72 |`print-l|evel'.ar|
|00000440| 65 20 70 72 69 6e 74 65 | 64 20 73 69 6d 70 6c 79 |e printe|d simply|
|00000450| 20 61 73 20 60 23 27 2e | 20 20 54 68 65 20 6f 62 | as `#'.| The ob|
|00000460| 6a 65 63 74 20 74 6f 20 | 62 65 20 70 72 69 6e 74 |ject to |be print|
|00000470| 65 64 20 69 73 20 61 74 | 20 6c 65 76 65 6c 20 30 |ed is at| level 0|
|00000480| 2c 0a 61 6e 64 20 69 66 | 20 74 68 65 20 6f 62 6a |,.and if| the obj|
|00000490| 65 63 74 20 69 73 20 61 | 20 6c 69 73 74 20 6f 72 |ect is a| list or|
|000004a0| 20 76 65 63 74 6f 72 2c | 20 69 74 73 20 74 6f 70 | vector,| its top|
|000004b0| 2d 6c 65 76 65 6c 20 63 | 6f 6d 70 6f 6e 65 6e 74 |-level c|omponent|
|000004c0| 73 20 61 72 65 20 61 74 | 0a 6c 65 76 65 6c 20 31 |s are at|.level 1|
|000004d0| 2e 1f 0a 28 64 65 66 76 | 61 72 20 70 72 69 6e 74 |...(defv|ar print|
|000004e0| 2d 6c 65 76 65 6c 20 6e | 69 6c 20 28 23 24 20 2e |-level n|il (#$ .|
|000004f0| 20 2d 37 34 33 29 29 0a | 23 40 36 31 38 20 2a 43 | -743)).|#@618 *C|
|00000500| 6f 6e 74 72 6f 6c 73 20 | 74 68 65 20 70 72 69 6e |ontrols |the prin|
|00000510| 74 69 6e 67 20 6f 66 20 | 72 65 63 75 72 73 69 76 |ting of |recursiv|
|00000520| 65 20 73 74 72 75 63 74 | 75 72 65 73 2e 20 20 0a |e struct|ures. .|
|00000530| 0a 49 66 20 6e 69 6c 2c | 20 70 72 69 6e 74 69 6e |.If nil,| printin|
|00000540| 67 20 70 72 6f 63 65 65 | 64 73 20 72 65 63 75 72 |g procee|ds recur|
|00000550| 73 69 76 65 6c 79 20 61 | 6e 64 20 6d 61 79 20 6c |sively a|nd may l|
|00000560| 65 61 64 20 74 6f 0a 60 | 6d 61 78 2d 6c 69 73 70 |ead to.`|max-lisp|
|00000570| 2d 65 76 61 6c 2d 64 65 | 70 74 68 27 20 62 65 69 |-eval-de|pth' bei|
|00000580| 6e 67 20 65 78 63 65 65 | 64 65 64 20 6f 72 20 61 |ng excee|ded or a|
|00000590| 6e 20 65 72 72 6f 72 20 | 6d 61 79 20 6f 63 63 75 |n error |may occu|
|000005a0| 72 3a 0a 22 41 70 70 61 | 72 65 6e 74 6c 79 20 63 |r:."Appa|rently c|
|000005b0| 69 72 63 75 6c 61 72 20 | 73 74 72 75 63 74 75 72 |ircular |structur|
|000005c0| 65 20 62 65 69 6e 67 20 | 70 72 69 6e 74 65 64 2e |e being |printed.|
|000005d0| 22 20 20 41 6c 73 6f 20 | 73 65 65 0a 60 70 72 69 |" Also |see.`pri|
|000005e0| 6e 74 2d 6c 65 6e 67 74 | 68 27 20 61 6e 64 20 60 |nt-lengt|h' and `|
|000005f0| 70 72 69 6e 74 2d 6c 65 | 76 65 6c 27 2e 0a 0a 49 |print-le|vel'...I|
|00000600| 66 20 6e 6f 6e 2d 6e 69 | 6c 2c 20 73 68 61 72 65 |f non-ni|l, share|
|00000610| 64 20 73 75 62 73 74 72 | 75 63 74 75 72 65 73 20 |d substr|uctures |
|00000620| 61 6e 79 77 68 65 72 65 | 20 69 6e 20 74 68 65 20 |anywhere| in the |
|00000630| 73 74 72 75 63 74 75 72 | 65 20 61 72 65 20 70 72 |structur|e are pr|
|00000640| 69 6e 74 65 64 0a 77 69 | 74 68 20 60 23 4e 3d 27 |inted.wi|th `#N='|
|00000650| 20 62 65 66 6f 72 65 20 | 74 68 65 20 66 69 72 73 | before |the firs|
|00000660| 74 20 6f 63 63 75 72 72 | 65 6e 63 65 20 28 69 6e |t occurr|ence (in|
|00000670| 20 74 68 65 20 6f 72 64 | 65 72 20 6f 66 20 74 68 | the ord|er of th|
|00000680| 65 20 70 72 69 6e 74 0a | 72 65 70 72 65 73 65 6e |e print.|represen|
|00000690| 74 61 74 69 6f 6e 29 20 | 61 6e 64 20 60 23 4e 23 |tation) |and `#N#|
|000006a0| 27 20 69 6e 20 70 6c 61 | 63 65 20 6f 66 20 65 61 |' in pla|ce of ea|
|000006b0| 63 68 20 73 75 62 73 65 | 71 75 65 6e 74 20 6f 63 |ch subse|quent oc|
|000006c0| 63 75 72 72 65 6e 63 65 | 2c 0a 77 68 65 72 65 20 |currence|,.where |
|000006d0| 4e 20 69 73 20 61 20 70 | 6f 73 69 74 69 76 65 20 |N is a p|ositive |
|000006e0| 64 65 63 69 6d 61 6c 20 | 69 6e 74 65 67 65 72 2e |decimal |integer.|
|000006f0| 0a 0a 54 68 65 72 65 20 | 69 73 20 6e 6f 20 77 61 |..There |is no wa|
|00000700| 79 20 74 6f 20 72 65 61 | 64 20 74 68 69 73 20 72 |y to rea|d this r|
|00000710| 65 70 72 65 73 65 6e 74 | 61 74 69 6f 6e 20 69 6e |epresent|ation in|
|00000720| 20 73 74 61 6e 64 61 72 | 64 20 45 6d 61 63 73 2c | standar|d Emacs,|
|00000730| 0a 62 75 74 20 69 66 20 | 79 6f 75 20 6e 65 65 64 |.but if |you need|
|00000740| 20 74 6f 20 64 6f 20 73 | 6f 2c 20 74 72 79 20 74 | to do s|o, try t|
|00000750| 68 65 20 63 6c 2d 72 65 | 61 64 2e 65 6c 20 70 61 |he cl-re|ad.el pa|
|00000760| 63 6b 61 67 65 2e 1f 0a | 28 64 65 66 76 61 72 20 |ckage...|(defvar |
|00000770| 70 72 69 6e 74 2d 63 69 | 72 63 6c 65 20 6e 69 6c |print-ci|rcle nil|
|00000780| 20 28 23 24 20 2e 20 2d | 31 32 37 38 29 29 0a 23 | (#$ . -|1278)).#|
|00000790| 40 32 33 38 20 2a 4e 6f | 6e 2d 6e 69 6c 20 69 66 |@238 *No|n-nil if|
|000007a0| 20 70 72 69 6e 74 69 6e | 67 20 6f 66 20 76 65 63 | printin|g of vec|
|000007b0| 74 6f 72 73 20 73 68 6f | 75 6c 64 20 6f 62 65 79 |tors sho|uld obey|
|000007c0| 20 70 72 69 6e 74 2d 6c | 65 76 65 6c 20 61 6e 64 | print-l|evel and|
|000007d0| 20 70 72 69 6e 74 2d 6c | 65 6e 67 74 68 2e 0a 0a | print-l|ength...|
|000007e0| 46 6f 72 20 45 6d 61 63 | 73 20 31 38 2c 20 73 65 |For Emac|s 18, se|
|000007f0| 74 74 69 6e 67 20 70 72 | 69 6e 74 2d 6c 65 76 65 |tting pr|int-leve|
|00000800| 6c 2c 20 6f 72 20 61 64 | 64 69 6e 67 20 63 75 73 |l, or ad|ding cus|
|00000810| 74 6f 6d 20 70 72 69 6e | 74 20 6c 69 73 74 20 6f |tom prin|t list o|
|00000820| 72 0a 76 65 63 74 6f 72 | 20 68 61 6e 64 6c 69 6e |r.vector| handlin|
|00000830| 67 20 77 69 6c 6c 20 6d | 61 6b 65 20 74 68 69 73 |g will m|ake this|
|00000840| 20 68 61 70 70 65 6e 20 | 61 6e 79 77 61 79 2e 20 | happen |anyway. |
|00000850| 20 45 6d 61 63 73 20 31 | 39 20 6f 62 65 79 73 0a | Emacs 1|9 obeys.|
|00000860| 70 72 69 6e 74 2d 6c 65 | 76 65 6c 2c 20 62 75 74 |print-le|vel, but|
|00000870| 20 6e 6f 74 20 66 6f 72 | 20 76 65 63 74 6f 72 73 | not for| vectors|
|00000880| 2e 1f 0a 28 64 65 66 76 | 61 72 20 63 75 73 74 6f |...(defv|ar custo|
|00000890| 6d 2d 70 72 69 6e 74 2d | 76 65 63 74 6f 72 73 20 |m-print-|vectors |
|000008a0| 6e 69 6c 20 28 23 24 20 | 2e 20 2d 31 39 34 31 29 |nil (#$ |. -1941)|
|000008b0| 29 0a 23 40 34 34 37 20 | 41 6e 20 61 6c 69 73 74 |).#@447 |An alist|
|000008c0| 20 66 6f 72 20 63 75 73 | 74 6f 6d 20 70 72 69 6e | for cus|tom prin|
|000008d0| 74 69 6e 67 20 6f 66 20 | 61 6e 79 20 74 79 70 65 |ting of |any type|
|000008e0| 2e 0a 50 61 69 72 73 20 | 61 72 65 20 6f 66 20 74 |..Pairs |are of t|
|000008f0| 68 65 20 66 6f 72 6d 20 | 28 50 52 45 44 49 43 41 |he form |(PREDICA|
|00000900| 54 45 20 2e 20 50 52 49 | 4e 54 45 52 29 2e 20 20 |TE . PRI|NTER). |
|00000910| 49 66 20 50 52 45 44 49 | 43 41 54 45 20 69 73 20 |If PREDI|CATE is |
|00000920| 74 72 75 65 0a 66 6f 72 | 20 61 6e 20 6f 62 6a 65 |true.for| an obje|
|00000930| 63 74 2c 20 74 68 65 6e | 20 50 52 49 4e 54 45 52 |ct, then| PRINTER|
|00000940| 20 69 73 20 63 61 6c 6c | 65 64 20 77 69 74 68 20 | is call|ed with |
|00000950| 74 68 65 20 6f 62 6a 65 | 63 74 2e 0a 50 52 49 4e |the obje|ct..PRIN|
|00000960| 54 45 52 20 73 68 6f 75 | 6c 64 20 70 72 69 6e 74 |TER shou|ld print|
|00000970| 20 74 6f 20 60 73 74 61 | 6e 64 61 72 64 2d 6f 75 | to `sta|ndard-ou|
|00000980| 74 70 75 74 27 20 75 73 | 69 6e 67 20 43 50 3a 3a |tput' us|ing CP::|
|00000990| 6f 72 69 67 69 6e 61 6c | 2d 70 72 69 6e 63 0a 69 |original|-princ.i|
|000009a0| 66 20 74 68 65 20 73 74 | 61 6e 64 61 72 64 20 70 |f the st|andard p|
|000009b0| 72 69 6e 74 65 72 20 69 | 73 20 73 75 66 66 69 63 |rinter i|s suffic|
|000009c0| 69 65 6e 74 2c 20 6f 72 | 20 43 50 3a 3a 70 72 69 |ient, or| CP::pri|
|000009d0| 6e 20 66 6f 72 20 63 6f | 6d 70 6c 65 78 20 74 68 |n for co|mplex th|
|000009e0| 69 6e 67 73 2e 0a 54 68 | 65 20 50 52 49 4e 54 45 |ings..Th|e PRINTE|
|000009f0| 52 20 73 68 6f 75 6c 64 | 20 72 65 74 75 72 6e 20 |R should| return |
|00000a00| 74 68 65 20 6f 62 6a 65 | 63 74 20 62 65 69 6e 67 |the obje|ct being|
|00000a10| 20 70 72 69 6e 74 65 64 | 2e 0a 0a 44 6f 6e 27 74 | printed|...Don't|
|00000a20| 20 6d 6f 64 69 66 79 20 | 74 68 69 73 20 76 61 72 | modify |this var|
|00000a30| 69 61 62 6c 65 20 64 69 | 72 65 63 74 6c 79 2e 20 |iable di|rectly. |
|00000a40| 20 55 73 65 20 60 61 64 | 64 2d 63 75 73 74 6f 6d | Use `ad|d-custom|
|00000a50| 2d 70 72 69 6e 74 65 72 | 27 20 61 6e 64 0a 60 64 |-printer|' and.`d|
|00000a60| 65 6c 65 74 65 2d 63 75 | 73 74 6f 6d 2d 70 72 69 |elete-cu|stom-pri|
|00000a70| 6e 74 65 72 27 1f 0a 28 | 64 65 66 63 6f 6e 73 74 |nter'..(|defconst|
|00000a80| 20 63 75 73 74 6f 6d 2d | 70 72 69 6e 74 65 72 73 | custom-|printers|
|00000a90| 20 6e 69 6c 20 28 23 24 | 20 2e 20 32 32 33 32 29 | nil (#$| . 2232)|
|00000aa0| 29 0a 23 40 31 31 34 20 | 41 64 64 20 61 20 70 61 |).#@114 |Add a pa|
|00000ab0| 69 72 20 6f 66 20 50 52 | 45 44 49 43 41 54 45 20 |ir of PR|EDICATE |
|00000ac0| 61 6e 64 20 50 52 49 4e | 54 45 52 20 74 6f 20 60 |and PRIN|TER to `|
|00000ad0| 63 75 73 74 6f 6d 2d 70 | 72 69 6e 74 65 72 73 27 |custom-p|rinters'|
|00000ae0| 2e 0a 41 6e 79 20 70 61 | 69 72 20 74 68 61 74 20 |..Any pa|ir that |
|00000af0| 68 61 73 20 74 68 65 20 | 73 61 6d 65 20 50 52 45 |has the |same PRE|
|00000b00| 44 49 43 41 54 45 20 69 | 73 20 66 69 72 73 74 20 |DICATE i|s first |
|00000b10| 72 65 6d 6f 76 65 64 2e | 1f 0a 28 64 65 66 61 6c |removed.|..(defal|
|00000b20| 69 61 73 20 27 61 64 64 | 2d 63 75 73 74 6f 6d 2d |ias 'add|-custom-|
|00000b30| 70 72 69 6e 74 65 72 20 | 23 5b 28 70 72 65 64 20 |printer |#[(pred |
|00000b40| 70 72 69 6e 74 65 72 29 | 20 22 08 09 42 c2 08 0b |printer)| "..B...|
|00000b50| b7 0b 5c 22 42 13 c4 20 | 87 22 20 5b 70 72 65 64 |..\"B.. |." [pred|
|00000b60| 20 70 72 69 6e 74 65 72 | 20 64 65 6c 71 20 63 75 | printer| delq cu|
|00000b70| 73 74 6f 6d 2d 70 72 69 | 6e 74 65 72 73 20 43 50 |stom-pri|nters CP|
|00000b80| 3a 3a 75 70 64 61 74 65 | 2d 63 75 73 74 6f 6d 2d |::update|-custom-|
|00000b90| 70 72 69 6e 74 65 72 73 | 5d 20 34 20 28 23 24 20 |printers|] 4 (#$ |
|00000ba0| 2e 20 32 37 32 38 29 5d | 29 0a 23 40 35 34 20 44 |. 2728)]|).#@54 D|
|00000bb0| 65 6c 65 74 65 20 74 68 | 65 20 63 75 73 74 6f 6d |elete th|e custom|
|00000bc0| 20 70 72 69 6e 74 65 72 | 20 61 73 73 6f 63 69 61 | printer| associa|
|00000bd0| 74 65 64 20 77 69 74 68 | 20 50 52 45 44 49 43 41 |ted with| PREDICA|
|00000be0| 54 45 2e 1f 0a 28 64 65 | 66 61 6c 69 61 73 20 27 |TE...(de|falias '|
|00000bf0| 64 65 6c 65 74 65 2d 63 | 75 73 74 6f 6d 2d 70 72 |delete-c|ustom-pr|
|00000c00| 69 6e 74 65 72 20 23 5b | 28 70 72 65 64 29 20 22 |inter #[|(pred) "|
|00000c10| c0 09 5c 6e b7 5c 6e 5c | 22 12 c3 20 87 22 20 5b |..\n.\n\|".. ." [|
|00000c20| 64 65 6c 71 20 70 72 65 | 64 20 63 75 73 74 6f 6d |delq pre|d custom|
|00000c30| 2d 70 72 69 6e 74 65 72 | 73 20 43 50 3a 3a 75 70 |-printer|s CP::up|
|00000c40| 64 61 74 65 2d 63 75 73 | 74 6f 6d 2d 70 72 69 6e |date-cus|tom-prin|
|00000c50| 74 65 72 73 5d 20 33 20 | 28 23 24 20 2e 20 32 39 |ters] 3 |(#$ . 29|
|00000c60| 39 31 29 5d 29 0a 28 64 | 65 66 61 6c 69 61 73 20 |91)]).(d|efalias |
|00000c70| 27 43 50 3a 3a 75 73 65 | 2d 63 75 73 74 6f 6d 2d |'CP::use|-custom-|
|00000c80| 70 72 69 6e 74 65 72 20 | 23 5b 28 6f 62 6a 65 63 |printer |#[(objec|
|00000c90| 74 29 20 22 c0 87 22 20 | 5b 6e 69 6c 5d 20 31 5d |t) ".." |[nil] 1]|
|00000ca0| 29 0a 28 64 65 66 61 6c | 69 61 73 20 27 43 50 3a |).(defal|ias 'CP:|
|00000cb0| 3a 75 70 64 61 74 65 2d | 63 75 73 74 6f 6d 2d 70 |:update-|custom-p|
|00000cc0| 72 69 6e 74 65 72 73 20 | 23 5b 6e 69 6c 20 22 c0 |rinters |#[nil ".|
|00000cd0| c1 c2 c3 c4 c5 c6 c7 0e | 08 5c 22 c9 5c 22 42 45 |........|.\".\"BE|
|00000ce0| 5c 22 87 22 20 5b 64 65 | 66 61 6c 69 61 73 20 43 |\"." [de|falias C|
|00000cf0| 50 3a 3a 75 73 65 2d 63 | 75 73 74 6f 6d 2d 70 72 |P::use-c|ustom-pr|
|00000d00| 69 6e 74 65 72 20 6c 61 | 6d 62 64 61 20 28 6f 62 |inter la|mbda (ob|
|00000d10| 6a 65 63 74 29 20 63 6f | 6e 64 20 61 70 70 65 6e |ject) co|nd appen|
|00000d20| 64 20 6d 61 70 63 61 72 | 20 23 5b 28 70 61 69 72 |d mapcar| #[(pair|
|00000d30| 29 20 22 08 40 c1 42 08 | 41 c2 42 44 87 22 20 5b |) ".@.B.|A.BD." [|
|00000d40| 70 61 69 72 20 28 6f 62 | 6a 65 63 74 29 20 28 6f |pair (ob|ject) (o|
|00000d50| 62 6a 65 63 74 29 5d 20 | 33 5d 20 63 75 73 74 6f |bject)] |3] custo|
|00000d60| 6d 2d 70 72 69 6e 74 65 | 72 73 20 28 28 74 20 6e |m-printe|rs ((t n|
|00000d70| 69 6c 29 29 5d 20 39 5d | 29 0a 28 64 65 66 61 6c |il))] 9]|).(defal|
|00000d80| 69 61 73 20 27 43 50 3a | 3a 73 65 74 2d 66 75 6e |ias 'CP:|:set-fun|
|00000d90| 63 74 69 6f 6e 2d 63 65 | 6c 6c 20 23 5b 28 73 79 |ction-ce|ll #[(sy|
|00000da0| 6d 62 6f 6c 2d 70 61 69 | 72 29 20 22 c0 09 40 09 |mbol-pai|r) "..@.|
|00000db0| 41 40 4b 5c 22 87 22 20 | 5b 64 65 66 61 6c 69 61 |A@K\"." |[defalia|
|00000dc0| 73 20 73 79 6d 62 6f 6c | 2d 70 61 69 72 5d 20 33 |s symbol|-pair] 3|
|00000dd0| 5d 29 0a 28 64 65 66 61 | 6c 69 61 73 20 27 43 50 |]).(defa|lias 'CP|
|00000de0| 3a 3a 6f 72 69 67 69 6e | 61 6c 2d 70 72 69 6e 63 |::origin|al-princ|
|00000df0| 20 23 5b 28 6f 62 6a 65 | 63 74 20 26 6f 70 74 69 | #[(obje|ct &opti|
|00000e00| 6f 6e 61 6c 20 73 74 72 | 65 61 6d 29 20 22 c0 87 |onal str|eam) "..|
|00000e10| 22 20 5b 6e 69 6c 5d 20 | 31 5d 29 0a 28 62 79 74 |" [nil] |1]).(byt|
|00000e20| 65 2d 63 6f 64 65 20 22 | c0 c1 21 ac 85 c2 c3 c4 |e-code "|..!.....|
|00000e30| 5c 22 88 c5 c6 c7 5c 22 | 87 22 20 5b 66 62 6f 75 |\"....\"|." [fbou|
|00000e40| 6e 64 70 20 43 50 3a 3a | 6f 72 69 67 69 6e 61 6c |ndp CP::|original|
|00000e50| 2d 70 72 69 6e 31 20 6d | 61 70 63 61 72 20 43 50 |-prin1 m|apcar CP|
|00000e60| 3a 3a 73 65 74 2d 66 75 | 6e 63 74 69 6f 6e 2d 63 |::set-fu|nction-c|
|00000e70| 65 6c 6c 20 28 28 43 50 | 3a 3a 6f 72 69 67 69 6e |ell ((CP|::origin|
|00000e80| 61 6c 2d 70 72 69 6e 31 | 20 70 72 69 6e 31 29 20 |al-prin1| prin1) |
|00000e90| 28 43 50 3a 3a 6f 72 69 | 67 69 6e 61 6c 2d 70 72 |(CP::ori|ginal-pr|
|00000ea0| 69 6e 63 20 70 72 69 6e | 63 29 20 28 43 50 3a 3a |inc prin|c) (CP::|
|00000eb0| 6f 72 69 67 69 6e 61 6c | 2d 70 72 69 6e 74 20 70 |original|-print p|
|00000ec0| 72 69 6e 74 29 20 28 43 | 50 3a 3a 6f 72 69 67 69 |rint) (C|P::origi|
|00000ed0| 6e 61 6c 2d 70 72 69 6e | 31 2d 74 6f 2d 73 74 72 |nal-prin|1-to-str|
|00000ee0| 69 6e 67 20 70 72 69 6e | 31 2d 74 6f 2d 73 74 72 |ing prin|1-to-str|
|00000ef0| 69 6e 67 29 20 28 43 50 | 3a 3a 6f 72 69 67 69 6e |ing) (CP|::origin|
|00000f00| 61 6c 2d 66 6f 72 6d 61 | 74 20 66 6f 72 6d 61 74 |al-forma|t format|
|00000f10| 29 20 28 43 50 3a 3a 6f | 72 69 67 69 6e 61 6c 2d |) (CP::o|riginal-|
|00000f20| 6d 65 73 73 61 67 65 20 | 6d 65 73 73 61 67 65 29 |message |message)|
|00000f30| 20 28 43 50 3a 3a 6f 72 | 69 67 69 6e 61 6c 2d 65 | (CP::or|iginal-e|
|00000f40| 72 72 6f 72 20 65 72 72 | 6f 72 29 29 20 64 65 66 |rror err|or)) def|
|00000f50| 61 6c 69 61 73 20 69 6e | 73 74 61 6c 6c 2d 63 75 |alias in|stall-cu|
|00000f60| 73 74 6f 6d 2d 70 72 69 | 6e 74 2d 66 75 6e 63 73 |stom-pri|nt-funcs|
|00000f70| 20 69 6e 73 74 61 6c 6c | 2d 63 75 73 74 6f 6d 2d | install|-custom-|
|00000f80| 70 72 69 6e 74 5d 20 33 | 29 0a 23 40 31 37 30 20 |print] 3|).#@170 |
|00000f90| 52 65 70 6c 61 63 65 20 | 70 72 69 6e 74 20 66 75 |Replace |print fu|
|00000fa0| 6e 63 74 69 6f 6e 73 20 | 77 69 74 68 20 67 65 6e |nctions |with gen|
|00000fb0| 65 72 61 6c 2c 20 63 75 | 73 74 6f 6d 69 7a 61 62 |eral, cu|stomizab|
|00000fc0| 6c 65 2c 20 4c 69 73 70 | 20 76 65 72 73 69 6f 6e |le, Lisp| version|
|00000fd0| 73 2e 0a 54 68 65 20 65 | 6d 61 63 73 20 73 75 62 |s..The e|macs sub|
|00000fe0| 72 6f 75 74 69 6e 65 73 | 20 61 72 65 20 73 61 76 |routines| are sav|
|00000ff0| 65 64 20 61 77 61 79 2c | 20 61 6e 64 20 79 6f 75 |ed away,| and you|
|00001000| 20 63 61 6e 20 72 65 69 | 6e 73 74 61 6c 6c 20 74 | can rei|nstall t|
|00001010| 68 65 6d 0a 62 79 20 72 | 75 6e 6e 69 6e 67 20 60 |hem.by r|unning `|
|00001020| 75 6e 69 6e 73 74 61 6c | 6c 2d 63 75 73 74 6f 6d |uninstal|l-custom|
|00001030| 2d 70 72 69 6e 74 27 2e | 1f 0a 28 64 65 66 61 6c |-print'.|..(defal|
|00001040| 69 61 73 20 27 69 6e 73 | 74 61 6c 6c 2d 63 75 73 |ias 'ins|tall-cus|
|00001050| 74 6f 6d 2d 70 72 69 6e | 74 20 23 5b 6e 69 6c 20 |tom-prin|t #[nil |
|00001060| 22 c0 c1 c2 5c 22 88 c3 | 87 22 20 5b 6d 61 70 63 |"...\"..|." [mapc|
|00001070| 61 72 20 43 50 3a 3a 73 | 65 74 2d 66 75 6e 63 74 |ar CP::s|et-funct|
|00001080| 69 6f 6e 2d 63 65 6c 6c | 20 28 28 70 72 69 6e 31 |ion-cell| ((prin1|
|00001090| 20 63 75 73 74 6f 6d 2d | 70 72 69 6e 31 29 20 28 | custom-|prin1) (|
|000010a0| 70 72 69 6e 63 20 63 75 | 73 74 6f 6d 2d 70 72 69 |princ cu|stom-pri|
|000010b0| 6e 63 29 20 28 70 72 69 | 6e 74 20 63 75 73 74 6f |nc) (pri|nt custo|
|000010c0| 6d 2d 70 72 69 6e 74 29 | 20 28 70 72 69 6e 31 2d |m-print)| (prin1-|
|000010d0| 74 6f 2d 73 74 72 69 6e | 67 20 63 75 73 74 6f 6d |to-strin|g custom|
|000010e0| 2d 70 72 69 6e 31 2d 74 | 6f 2d 73 74 72 69 6e 67 |-prin1-t|o-string|
|000010f0| 29 20 28 66 6f 72 6d 61 | 74 20 63 75 73 74 6f 6d |) (forma|t custom|
|00001100| 2d 66 6f 72 6d 61 74 29 | 20 28 6d 65 73 73 61 67 |-format)| (messag|
|00001110| 65 20 63 75 73 74 6f 6d | 2d 6d 65 73 73 61 67 65 |e custom|-message|
|00001120| 29 20 28 65 72 72 6f 72 | 20 63 75 73 74 6f 6d 2d |) (error| custom-|
|00001130| 65 72 72 6f 72 29 29 20 | 74 5d 20 33 20 28 23 24 |error)) |t] 3 (#$|
|00001140| 20 2e 20 33 39 38 34 29 | 20 6e 69 6c 5d 29 0a 28 | . 3984)| nil]).(|
|00001150| 64 65 66 61 6c 69 61 73 | 20 27 75 6e 69 6e 73 74 |defalias| 'uninst|
|00001160| 61 6c 6c 2d 63 75 73 74 | 6f 6d 2d 70 72 69 6e 74 |all-cust|om-print|
|00001170| 2d 66 75 6e 63 73 20 27 | 75 6e 69 6e 73 74 61 6c |-funcs '|uninstal|
|00001180| 6c 2d 63 75 73 74 6f 6d | 2d 70 72 69 6e 74 29 0a |l-custom|-print).|
|00001190| 23 40 35 31 20 52 65 73 | 65 74 20 70 72 69 6e 74 |#@51 Res|et print|
|000011a0| 20 66 75 6e 63 74 69 6f | 6e 73 20 74 6f 20 74 68 | functio|ns to th|
|000011b0| 65 69 72 20 65 6d 61 63 | 73 20 73 75 62 72 6f 75 |eir emac|s subrou|
|000011c0| 74 69 6e 65 73 2e 1f 0a | 28 64 65 66 61 6c 69 61 |tines...|(defalia|
|000011d0| 73 20 27 75 6e 69 6e 73 | 74 61 6c 6c 2d 63 75 73 |s 'unins|tall-cus|
|000011e0| 74 6f 6d 2d 70 72 69 6e | 74 20 23 5b 6e 69 6c 20 |tom-prin|t #[nil |
|000011f0| 22 c0 c1 c2 5c 22 88 c3 | 87 22 20 5b 6d 61 70 63 |"...\"..|." [mapc|
|00001200| 61 72 20 43 50 3a 3a 73 | 65 74 2d 66 75 6e 63 74 |ar CP::s|et-funct|
|00001210| 69 6f 6e 2d 63 65 6c 6c | 20 28 28 70 72 69 6e 31 |ion-cell| ((prin1|
|00001220| 20 43 50 3a 3a 6f 72 69 | 67 69 6e 61 6c 2d 70 72 | CP::ori|ginal-pr|
|00001230| 69 6e 31 29 20 28 70 72 | 69 6e 63 20 43 50 3a 3a |in1) (pr|inc CP::|
|00001240| 6f 72 69 67 69 6e 61 6c | 2d 70 72 69 6e 63 29 20 |original|-princ) |
|00001250| 28 70 72 69 6e 74 20 43 | 50 3a 3a 6f 72 69 67 69 |(print C|P::origi|
|00001260| 6e 61 6c 2d 70 72 69 6e | 74 29 20 28 70 72 69 6e |nal-prin|t) (prin|
|00001270| 31 2d 74 6f 2d 73 74 72 | 69 6e 67 20 43 50 3a 3a |1-to-str|ing CP::|
|00001280| 6f 72 69 67 69 6e 61 6c | 2d 70 72 69 6e 31 2d 74 |original|-prin1-t|
|00001290| 6f 2d 73 74 72 69 6e 67 | 29 20 28 66 6f 72 6d 61 |o-string|) (forma|
|000012a0| 74 20 43 50 3a 3a 6f 72 | 69 67 69 6e 61 6c 2d 66 |t CP::or|iginal-f|
|000012b0| 6f 72 6d 61 74 29 20 28 | 6d 65 73 73 61 67 65 20 |ormat) (|message |
|000012c0| 43 50 3a 3a 6f 72 69 67 | 69 6e 61 6c 2d 6d 65 73 |CP::orig|inal-mes|
|000012d0| 73 61 67 65 29 20 28 65 | 72 72 6f 72 20 43 50 3a |sage) (e|rror CP:|
|000012e0| 3a 6f 72 69 67 69 6e 61 | 6c 2d 65 72 72 6f 72 29 |:origina|l-error)|
|000012f0| 29 20 74 5d 20 33 20 28 | 23 24 20 2e 20 34 35 30 |) t] 3 (|#$ . 450|
|00001300| 31 29 20 6e 69 6c 5d 29 | 0a 28 64 65 66 61 6c 69 |1) nil])|.(defali|
|00001310| 61 73 20 27 63 75 73 74 | 6f 6d 2d 70 72 69 6e 74 |as 'cust|om-print|
|00001320| 2d 66 75 6e 63 73 2d 69 | 6e 73 74 61 6c 6c 65 64 |-funcs-i|nstalled|
|00001330| 2d 70 20 27 63 75 73 74 | 6f 6d 2d 70 72 69 6e 74 |-p 'cust|om-print|
|00001340| 2d 69 6e 73 74 61 6c 6c | 65 64 2d 70 29 0a 23 40 |-install|ed-p).#@|
|00001350| 36 35 20 52 65 74 75 72 | 6e 20 74 20 69 66 20 63 |65 Retur|n t if c|
|00001360| 75 73 74 6f 6d 2d 70 72 | 69 6e 74 20 69 73 20 63 |ustom-pr|int is c|
|00001370| 75 72 72 65 6e 74 6c 79 | 20 69 6e 73 74 61 6c 6c |urrently| install|
|00001380| 65 64 2c 20 6e 69 6c 20 | 6f 74 68 65 72 77 69 73 |ed, nil |otherwis|
|00001390| 65 2e 1f 0a 28 64 65 66 | 61 6c 69 61 73 20 27 63 |e...(def|alias 'c|
|000013a0| 75 73 74 6f 6d 2d 70 72 | 69 6e 74 2d 69 6e 73 74 |ustom-pr|int-inst|
|000013b0| 61 6c 6c 65 64 2d 70 20 | 23 5b 6e 69 6c 20 22 c0 |alled-p |#[nil ".|
|000013c0| 4b c1 4b 61 87 22 20 5b | 63 75 73 74 6f 6d 2d 70 |K.Ka." [|custom-p|
|000013d0| 72 69 6e 31 20 70 72 69 | 6e 31 5d 20 32 20 28 23 |rin1 pri|n1] 2 (#|
|000013e0| 24 20 2e 20 34 39 34 37 | 29 5d 29 0a 28 62 79 74 |$ . 4947|)]).(byt|
|000013f0| 65 2d 63 6f 64 65 20 22 | c0 c1 c2 c3 23 88 c0 c4 |e-code "|....#...|
|00001400| c2 c5 23 88 c6 c1 c4 5c | 22 87 22 20 5b 70 75 74 |..#....\|"." [put|
|00001410| 20 77 69 74 68 2d 63 75 | 73 74 6f 6d 2d 70 72 69 | with-cu|stom-pri|
|00001420| 6e 74 2d 66 75 6e 63 73 | 20 65 64 65 62 75 67 2d |nt-funcs| edebug-|
|00001430| 66 6f 72 6d 2d 73 70 65 | 63 20 28 62 6f 64 79 29 |form-spe|c (body)|
|00001440| 20 77 69 74 68 2d 63 75 | 73 74 6f 6d 2d 70 72 69 | with-cu|stom-pri|
|00001450| 6e 74 20 28 62 6f 64 79 | 29 20 64 65 66 61 6c 69 |nt (body|) defali|
|00001460| 61 73 5d 20 34 29 0a 23 | 40 36 38 20 54 65 6d 70 |as] 4).#|@68 Temp|
|00001470| 6f 72 61 72 69 6c 79 20 | 69 6e 73 74 61 6c 6c 20 |orarily |install |
|00001480| 74 68 65 20 63 75 73 74 | 6f 6d 20 70 72 69 6e 74 |the cust|om print|
|00001490| 20 70 61 63 6b 61 67 65 | 20 77 68 69 6c 65 20 65 | package| while e|
|000014a0| 78 65 63 75 74 69 6e 67 | 20 42 4f 44 59 2e 1f 0a |xecuting| BODY...|
|000014b0| 28 64 65 66 61 6c 69 61 | 73 20 27 77 69 74 68 2d |(defalia|s 'with-|
|000014c0| 63 75 73 74 6f 6d 2d 70 | 72 69 6e 74 20 27 28 6d |custom-p|rint '(m|
|000014d0| 61 63 72 6f 20 2e 20 23 | 5b 28 26 72 65 73 74 20 |acro . #|[(&rest |
|000014e0| 62 6f 64 79 29 20 22 c0 | c1 c2 0b 42 42 c4 42 42 |body) ".|...BB.BB|
|000014f0| 87 22 20 5b 75 6e 77 69 | 6e 64 2d 70 72 6f 74 65 |." [unwi|nd-prote|
|00001500| 63 74 20 70 72 6f 67 6e | 20 28 69 6e 73 74 61 6c |ct progn| (instal|
|00001510| 6c 2d 63 75 73 74 6f 6d | 2d 70 72 69 6e 74 29 20 |l-custom|-print) |
|00001520| 62 6f 64 79 20 28 28 75 | 6e 69 6e 73 74 61 6c 6c |body ((u|ninstall|
|00001530| 2d 63 75 73 74 6f 6d 2d | 70 72 69 6e 74 29 29 5d |-custom-|print))]|
|00001540| 20 34 20 28 23 24 20 2e | 20 35 32 32 38 29 5d 29 | 4 (#$ .| 5228)])|
|00001550| 29 0a 23 40 34 31 30 20 | 4f 75 74 70 75 74 20 74 |).#@410 |Output t|
|00001560| 68 65 20 70 72 69 6e 74 | 65 64 20 72 65 70 72 65 |he print|ed repre|
|00001570| 73 65 6e 74 61 74 69 6f | 6e 20 6f 66 20 4f 42 4a |sentatio|n of OBJ|
|00001580| 45 43 54 2c 20 61 6e 79 | 20 4c 69 73 70 20 6f 62 |ECT, any| Lisp ob|
|00001590| 6a 65 63 74 2e 0a 51 75 | 6f 74 69 6e 67 20 63 68 |ject..Qu|oting ch|
|000015a0| 61 72 61 63 74 65 72 73 | 20 61 72 65 20 70 72 69 |aracters| are pri|
|000015b0| 6e 74 65 64 20 77 68 65 | 6e 20 6e 65 65 64 65 64 |nted whe|n needed|
|000015c0| 20 74 6f 20 6d 61 6b 65 | 20 6f 75 74 70 75 74 20 | to make| output |
|000015d0| 74 68 61 74 20 60 72 65 | 61 64 27 0a 63 61 6e 20 |that `re|ad'.can |
|000015e0| 68 61 6e 64 6c 65 2c 20 | 77 68 65 6e 65 76 65 72 |handle, |whenever|
|000015f0| 20 74 68 69 73 20 69 73 | 20 70 6f 73 73 69 62 6c | this is| possibl|
|00001600| 65 2e 0a 4f 75 74 70 75 | 74 20 73 74 72 65 61 6d |e..Outpu|t stream|
|00001610| 20 69 73 20 53 54 52 45 | 41 4d 2c 20 6f 72 20 76 | is STRE|AM, or v|
|00001620| 61 6c 75 65 20 6f 66 20 | 60 73 74 61 6e 64 61 72 |alue of |`standar|
|00001630| 64 2d 6f 75 74 70 75 74 | 27 20 28 77 68 69 63 68 |d-output|' (which|
|00001640| 20 73 65 65 29 2e 0a 0a | 54 68 69 73 20 69 73 20 | see)...|This is |
|00001650| 74 68 65 20 63 75 73 74 | 6f 6d 2d 70 72 69 6e 74 |the cust|om-print|
|00001660| 20 72 65 70 6c 61 63 65 | 6d 65 6e 74 20 66 6f 72 | replace|ment for|
|00001670| 20 74 68 65 20 73 74 61 | 6e 64 61 72 64 20 60 70 | the sta|ndard `p|
|00001680| 72 69 6e 31 27 2e 20 20 | 49 74 0a 75 73 65 73 20 |rin1'. |It.uses |
|00001690| 74 68 65 20 61 70 70 72 | 6f 70 72 69 61 74 65 20 |the appr|opriate |
|000016a0| 70 72 69 6e 74 65 72 20 | 64 65 70 65 6e 64 69 6e |printer |dependin|
|000016b0| 67 20 6f 6e 20 74 68 65 | 20 76 61 6c 75 65 73 20 |g on the| values |
|000016c0| 6f 66 20 60 70 72 69 6e | 74 2d 6c 65 76 65 6c 27 |of `prin|t-level'|
|000016d0| 0a 61 6e 64 20 60 70 72 | 69 6e 74 2d 63 69 72 63 |.and `pr|int-circ|
|000016e0| 6c 65 27 20 28 77 68 69 | 63 68 20 73 65 65 29 2e |le' (whi|ch see).|
|000016f0| 1f 0a 28 64 65 66 61 6c | 69 61 73 20 27 63 75 73 |..(defal|ias 'cus|
|00001700| 74 6f 6d 2d 70 72 69 6e | 31 20 23 5b 28 6f 62 6a |tom-prin|1 #[(obj|
|00001710| 65 63 74 20 26 6f 70 74 | 69 6f 6e 61 6c 20 73 74 |ect &opt|ional st|
|00001720| 72 65 61 6d 29 20 22 c0 | 09 5c 6e c3 23 87 22 20 |ream) ".|.\n.#." |
|00001730| 5b 43 50 3a 3a 74 6f 70 | 2d 6c 65 76 65 6c 20 6f |[CP::top|-level o|
|00001740| 62 6a 65 63 74 20 73 74 | 72 65 61 6d 20 43 50 3a |bject st|ream CP:|
|00001750| 3a 6f 72 69 67 69 6e 61 | 6c 2d 70 72 69 6e 31 5d |:origina|l-prin1]|
|00001760| 20 34 20 28 23 24 20 2e | 20 35 34 36 34 29 5d 29 | 4 (#$ .| 5464)])|
|00001770| 0a 23 40 32 38 35 20 4f | 75 74 70 75 74 20 74 68 |.#@285 O|utput th|
|00001780| 65 20 70 72 69 6e 74 65 | 64 20 72 65 70 72 65 73 |e printe|d repres|
|00001790| 65 6e 74 61 74 69 6f 6e | 20 6f 66 20 4f 42 4a 45 |entation| of OBJE|
|000017a0| 43 54 2c 20 61 6e 79 20 | 4c 69 73 70 20 6f 62 6a |CT, any |Lisp obj|
|000017b0| 65 63 74 2e 0a 4e 6f 20 | 71 75 6f 74 69 6e 67 20 |ect..No |quoting |
|000017c0| 63 68 61 72 61 63 74 65 | 72 73 20 61 72 65 20 75 |characte|rs are u|
|000017d0| 73 65 64 3b 20 6e 6f 20 | 64 65 6c 69 6d 69 74 65 |sed; no |delimite|
|000017e0| 72 73 20 61 72 65 20 70 | 72 69 6e 74 65 64 20 61 |rs are p|rinted a|
|000017f0| 72 6f 75 6e 64 0a 74 68 | 65 20 63 6f 6e 74 65 6e |round.th|e conten|
|00001800| 74 73 20 6f 66 20 73 74 | 72 69 6e 67 73 2e 0a 4f |ts of st|rings..O|
|00001810| 75 74 70 75 74 20 73 74 | 72 65 61 6d 20 69 73 20 |utput st|ream is |
|00001820| 53 54 52 45 41 4d 2c 20 | 6f 72 20 76 61 6c 75 65 |STREAM, |or value|
|00001830| 20 6f 66 20 60 73 74 61 | 6e 64 61 72 64 2d 6f 75 | of `sta|ndard-ou|
|00001840| 74 70 75 74 27 20 28 77 | 68 69 63 68 20 73 65 65 |tput' (w|hich see|
|00001850| 29 2e 0a 0a 54 68 69 73 | 20 69 73 20 74 68 65 20 |)...This| is the |
|00001860| 63 75 73 74 6f 6d 2d 70 | 72 69 6e 74 20 72 65 70 |custom-p|rint rep|
|00001870| 6c 61 63 65 6d 65 6e 74 | 20 66 6f 72 20 74 68 65 |lacement| for the|
|00001880| 20 73 74 61 6e 64 61 72 | 64 20 60 70 72 69 6e 63 | standar|d `princ|
|00001890| 27 2e 1f 0a 28 64 65 66 | 61 6c 69 61 73 20 27 63 |'...(def|alias 'c|
|000018a0| 75 73 74 6f 6d 2d 70 72 | 69 6e 63 20 23 5b 28 6f |ustom-pr|inc #[(o|
|000018b0| 62 6a 65 63 74 20 26 6f | 70 74 69 6f 6e 61 6c 20 |bject &o|ptional |
|000018c0| 73 74 72 65 61 6d 29 20 | 22 c0 09 5c 6e c3 23 87 |stream) |"..\n.#.|
|000018d0| 22 20 5b 43 50 3a 3a 74 | 6f 70 2d 6c 65 76 65 6c |" [CP::t|op-level|
|000018e0| 20 6f 62 6a 65 63 74 20 | 73 74 72 65 61 6d 20 43 | object |stream C|
|000018f0| 50 3a 3a 6f 72 69 67 69 | 6e 61 6c 2d 70 72 69 6e |P::origi|nal-prin|
|00001900| 63 5d 20 34 20 28 23 24 | 20 2e 20 36 30 30 37 29 |c] 4 (#$| . 6007)|
|00001910| 5d 29 0a 23 40 32 36 34 | 20 52 65 74 75 72 6e 20 |]).#@264| Return |
|00001920| 61 20 73 74 72 69 6e 67 | 20 63 6f 6e 74 61 69 6e |a string| contain|
|00001930| 69 6e 67 20 74 68 65 20 | 70 72 69 6e 74 65 64 20 |ing the |printed |
|00001940| 72 65 70 72 65 73 65 6e | 74 61 74 69 6f 6e 20 6f |represen|tation o|
|00001950| 66 20 4f 42 4a 45 43 54 | 2c 0a 61 6e 79 20 4c 69 |f OBJECT|,.any Li|
|00001960| 73 70 20 6f 62 6a 65 63 | 74 2e 20 20 51 75 6f 74 |sp objec|t. Quot|
|00001970| 69 6e 67 20 63 68 61 72 | 61 63 74 65 72 73 20 61 |ing char|acters a|
|00001980| 72 65 20 75 73 65 64 20 | 77 68 65 6e 20 6e 65 65 |re used |when nee|
|00001990| 64 65 64 20 74 6f 20 6d | 61 6b 65 20 6f 75 74 70 |ded to m|ake outp|
|000019a0| 75 74 0a 74 68 61 74 20 | 60 72 65 61 64 27 20 63 |ut.that |`read' c|
|000019b0| 61 6e 20 68 61 6e 64 6c | 65 2c 20 77 68 65 6e 65 |an handl|e, whene|
|000019c0| 76 65 72 20 74 68 69 73 | 20 69 73 20 70 6f 73 73 |ver this| is poss|
|000019d0| 69 62 6c 65 2e 0a 0a 54 | 68 69 73 20 69 73 20 74 |ible...T|his is t|
|000019e0| 68 65 20 63 75 73 74 6f | 6d 2d 70 72 69 6e 74 20 |he custo|m-print |
|000019f0| 72 65 70 6c 61 63 65 6d | 65 6e 74 20 66 6f 72 20 |replacem|ent for |
|00001a00| 74 68 65 20 73 74 61 6e | 64 61 72 64 20 60 70 72 |the stan|dard `pr|
|00001a10| 69 6e 31 2d 74 6f 2d 73 | 74 72 69 6e 67 27 2e 1f |in1-to-s|tring'..|
|00001a20| 0a 28 64 65 66 61 6c 69 | 61 73 20 27 63 75 73 74 |.(defali|as 'cust|
|00001a30| 6f 6d 2d 70 72 69 6e 31 | 2d 74 6f 2d 73 74 72 69 |om-prin1|-to-stri|
|00001a40| 6e 67 20 23 5b 28 6f 62 | 6a 65 63 74 29 20 22 c0 |ng #[(ob|ject) ".|
|00001a50| c1 21 1a 8a 5c 6e 71 88 | c3 20 88 29 c4 0d 5c 6e |.!..\nq.|. .)..\n|
|00001a60| 5c 22 88 8a 5c 6e 71 88 | c6 20 2a 87 22 20 5b 67 |\"..\nq.|. *." [g|
|00001a70| 65 74 2d 62 75 66 66 65 | 72 2d 63 72 65 61 74 65 |et-buffe|r-create|
|00001a80| 20 22 20 2a 63 75 73 74 | 6f 6d 2d 70 72 69 6e 74 | " *cust|om-print|
|00001a90| 2d 74 65 6d 70 2a 22 20 | 62 75 66 20 65 72 61 73 |-temp*" |buf eras|
|00001aa0| 65 2d 62 75 66 66 65 72 | 20 63 75 73 74 6f 6d 2d |e-buffer| custom-|
|00001ab0| 70 72 69 6e 31 20 6f 62 | 6a 65 63 74 20 62 75 66 |prin1 ob|ject buf|
|00001ac0| 66 65 72 2d 73 74 72 69 | 6e 67 5d 20 33 20 28 23 |fer-stri|ng] 3 (#|
|00001ad0| 24 20 2e 20 36 34 32 35 | 29 5d 29 0a 23 40 33 31 |$ . 6425|)]).#@31|
|00001ae0| 32 20 4f 75 74 70 75 74 | 20 74 68 65 20 70 72 69 |2 Output| the pri|
|00001af0| 6e 74 65 64 20 72 65 70 | 72 65 73 65 6e 74 61 74 |nted rep|resentat|
|00001b00| 69 6f 6e 20 6f 66 20 4f | 42 4a 45 43 54 2c 20 77 |ion of O|BJECT, w|
|00001b10| 69 74 68 20 6e 65 77 6c | 69 6e 65 73 20 61 72 6f |ith newl|ines aro|
|00001b20| 75 6e 64 20 69 74 2e 0a | 51 75 6f 74 69 6e 67 20 |und it..|Quoting |
|00001b30| 63 68 61 72 61 63 74 65 | 72 73 20 61 72 65 20 70 |characte|rs are p|
|00001b40| 72 69 6e 74 65 64 20 77 | 68 65 6e 20 6e 65 65 64 |rinted w|hen need|
|00001b50| 65 64 20 74 6f 20 6d 61 | 6b 65 20 6f 75 74 70 75 |ed to ma|ke outpu|
|00001b60| 74 20 74 68 61 74 20 60 | 72 65 61 64 27 0a 63 61 |t that `|read'.ca|
|00001b70| 6e 20 68 61 6e 64 6c 65 | 2c 20 77 68 65 6e 65 76 |n handle|, whenev|
|00001b80| 65 72 20 74 68 69 73 20 | 69 73 20 70 6f 73 73 69 |er this |is possi|
|00001b90| 62 6c 65 2e 0a 4f 75 74 | 70 75 74 20 73 74 72 65 |ble..Out|put stre|
|00001ba0| 61 6d 20 69 73 20 53 54 | 52 45 41 4d 2c 20 6f 72 |am is ST|REAM, or|
|00001bb0| 20 76 61 6c 75 65 20 6f | 66 20 60 73 74 61 6e 64 | value o|f `stand|
|00001bc0| 61 72 64 2d 6f 75 74 70 | 75 74 27 20 28 77 68 69 |ard-outp|ut' (whi|
|00001bd0| 63 68 20 73 65 65 29 2e | 0a 0a 54 68 69 73 20 69 |ch see).|..This i|
|00001be0| 73 20 74 68 65 20 63 75 | 73 74 6f 6d 2d 70 72 69 |s the cu|stom-pri|
|00001bf0| 6e 74 20 72 65 70 6c 61 | 63 65 6d 65 6e 74 20 66 |nt repla|cement f|
|00001c00| 6f 72 20 74 68 65 20 73 | 74 61 6e 64 61 72 64 20 |or the s|tandard |
|00001c10| 60 70 72 69 6e 74 27 2e | 1f 0a 28 64 65 66 61 6c |`print'.|..(defal|
|00001c20| 69 61 73 20 27 63 75 73 | 74 6f 6d 2d 70 72 69 6e |ias 'cus|tom-prin|
|00001c30| 74 20 23 5b 28 6f 62 6a | 65 63 74 20 26 6f 70 74 |t #[(obj|ect &opt|
|00001c40| 69 6f 6e 61 6c 20 73 74 | 72 65 61 6d 29 20 22 c0 |ional st|ream) ".|
|00001c50| c1 5c 6e 5c 22 88 c3 0c | 5c 6e 5c 22 88 c0 c1 5c |.\n\"...|\n\"...\|
|00001c60| 6e 5c 22 87 22 20 5b 43 | 50 3a 3a 6f 72 69 67 69 |n\"." [C|P::origi|
|00001c70| 6e 61 6c 2d 70 72 69 6e | 63 20 22 5c 6e 22 20 73 |nal-prin|c "\n" s|
|00001c80| 74 72 65 61 6d 20 63 75 | 73 74 6f 6d 2d 70 72 69 |tream cu|stom-pri|
|00001c90| 6e 31 20 6f 62 6a 65 63 | 74 5d 20 33 20 28 23 24 |n1 objec|t] 3 (#$|
|00001ca0| 20 2e 20 36 38 38 32 29 | 5d 29 0a 23 40 38 35 30 | . 6882)|]).#@850|
|00001cb0| 20 46 6f 72 6d 61 74 20 | 61 20 73 74 72 69 6e 67 | Format |a string|
|00001cc0| 20 6f 75 74 20 6f 66 20 | 61 20 63 6f 6e 74 72 6f | out of |a contro|
|00001cd0| 6c 2d 73 74 72 69 6e 67 | 20 61 6e 64 20 61 72 67 |l-string| and arg|
|00001ce0| 75 6d 65 6e 74 73 2e 20 | 20 0a 54 68 65 20 66 69 |uments. | .The fi|
|00001cf0| 72 73 74 20 61 72 67 75 | 6d 65 6e 74 20 69 73 20 |rst argu|ment is |
|00001d00| 61 20 63 6f 6e 74 72 6f | 6c 20 73 74 72 69 6e 67 |a contro|l string|
|00001d10| 2e 20 20 49 74 2c 20 61 | 6e 64 20 73 75 62 73 65 |. It, a|nd subse|
|00001d20| 71 75 65 6e 74 20 61 72 | 67 75 6d 65 6e 74 73 0a |quent ar|guments.|
|00001d30| 73 75 62 73 74 69 74 75 | 74 65 64 20 69 6e 74 6f |substitu|ted into|
|00001d40| 20 69 74 2c 20 62 65 63 | 6f 6d 65 20 74 68 65 20 | it, bec|ome the |
|00001d50| 76 61 6c 75 65 2c 20 77 | 68 69 63 68 20 69 73 20 |value, w|hich is |
|00001d60| 61 20 73 74 72 69 6e 67 | 2e 0a 49 74 20 6d 61 79 |a string|..It may|
|00001d70| 20 63 6f 6e 74 61 69 6e | 20 25 73 20 6f 72 20 25 | contain| %s or %|
|00001d80| 64 20 6f 72 20 25 63 20 | 74 6f 20 73 75 62 73 74 |d or %c |to subst|
|00001d90| 69 74 75 74 65 20 73 75 | 63 63 65 73 73 69 76 65 |itute su|ccessive|
|00001da0| 20 66 6f 6c 6c 6f 77 69 | 6e 67 20 61 72 67 75 6d | followi|ng argum|
|00001db0| 65 6e 74 73 2e 0a 25 73 | 20 6d 65 61 6e 73 20 70 |ents..%s| means p|
|00001dc0| 72 69 6e 74 20 61 6e 20 | 61 72 67 75 6d 65 6e 74 |rint an |argument|
|00001dd0| 20 61 73 20 61 20 73 74 | 72 69 6e 67 2c 20 25 64 | as a st|ring, %d|
|00001de0| 20 6d 65 61 6e 73 20 70 | 72 69 6e 74 20 61 73 20 | means p|rint as |
|00001df0| 6e 75 6d 62 65 72 20 69 | 6e 20 64 65 63 69 6d 61 |number i|n decima|
|00001e00| 6c 2c 0a 25 63 20 6d 65 | 61 6e 73 20 70 72 69 6e |l,.%c me|ans prin|
|00001e10| 74 20 61 20 6e 75 6d 62 | 65 72 20 61 73 20 61 20 |t a numb|er as a |
|00001e20| 73 69 6e 67 6c 65 20 63 | 68 61 72 61 63 74 65 72 |single c|haracter|
|00001e30| 2e 0a 54 68 65 20 61 72 | 67 75 6d 65 6e 74 20 75 |..The ar|gument u|
|00001e40| 73 65 64 20 62 79 20 25 | 73 20 6d 75 73 74 20 62 |sed by %|s must b|
|00001e50| 65 20 61 20 73 74 72 69 | 6e 67 20 6f 72 20 61 20 |e a stri|ng or a |
|00001e60| 73 79 6d 62 6f 6c 3b 0a | 74 68 65 20 61 72 67 75 |symbol;.|the argu|
|00001e70| 6d 65 6e 74 20 75 73 65 | 64 20 62 79 20 25 64 2c |ment use|d by %d,|
|00001e80| 20 25 62 2c 20 25 6f 2c | 20 25 78 20 6f 72 20 25 | %b, %o,| %x or %|
|00001e90| 63 20 6d 75 73 74 20 62 | 65 20 61 20 6e 75 6d 62 |c must b|e a numb|
|00001ea0| 65 72 2e 0a 0a 54 68 69 | 73 20 69 73 20 74 68 65 |er...Thi|s is the|
|00001eb0| 20 63 75 73 74 6f 6d 2d | 70 72 69 6e 74 20 72 65 | custom-|print re|
|00001ec0| 70 6c 61 63 65 6d 65 6e | 74 20 66 6f 72 20 74 68 |placemen|t for th|
|00001ed0| 65 20 73 74 61 6e 64 61 | 72 64 20 60 66 6f 72 6d |e standa|rd `form|
|00001ee0| 61 74 27 2e 20 20 49 74 | 0a 63 61 6c 6c 73 20 74 |at'. It|.calls t|
|00001ef0| 68 65 20 65 6d 61 63 73 | 20 60 66 6f 72 6d 61 74 |he emacs| `format|
|00001f00| 27 20 61 66 74 65 72 20 | 66 69 72 73 74 20 6d 61 |' after |first ma|
|00001f10| 6b 69 6e 67 20 73 74 72 | 69 6e 67 73 20 66 6f 72 |king str|ings for|
|00001f20| 20 6c 69 73 74 2c 0a 76 | 65 63 74 6f 72 2c 20 6f | list,.v|ector, o|
|00001f30| 72 20 73 79 6d 62 6f 6c | 20 61 72 67 73 2e 20 20 |r symbol| args. |
|00001f40| 54 68 65 20 66 6f 72 6d | 61 74 20 73 70 65 63 69 |The form|at speci|
|00001f50| 66 69 63 61 74 69 6f 6e | 20 66 6f 72 20 73 75 63 |fication| for suc|
|00001f60| 68 20 61 72 67 73 20 73 | 68 6f 75 6c 64 0a 62 65 |h args s|hould.be|
|00001f70| 20 60 25 73 27 20 69 6e | 20 61 6e 79 20 63 61 73 | `%s' in| any cas|
|00001f80| 65 2c 20 73 6f 20 61 20 | 73 74 72 69 6e 67 20 61 |e, so a |string a|
|00001f90| 72 67 75 6d 65 6e 74 20 | 77 69 6c 6c 20 61 6c 73 |rgument |will als|
|00001fa0| 6f 20 77 6f 72 6b 2e 20 | 20 54 68 65 20 73 74 72 |o work. | The str|
|00001fb0| 69 6e 67 0a 69 73 20 67 | 65 6e 65 72 61 74 65 64 |ing.is g|enerated|
|00001fc0| 20 77 69 74 68 20 60 63 | 75 73 74 6f 6d 2d 70 72 | with `c|ustom-pr|
|00001fd0| 69 6e 31 2d 74 6f 2d 73 | 74 72 69 6e 67 27 2c 20 |in1-to-s|tring', |
|00001fe0| 77 68 69 63 68 20 71 75 | 6f 74 65 73 20 71 75 6f |which qu|otes quo|
|00001ff0| 74 61 62 6c 65 0a 63 68 | 61 72 61 63 74 65 72 73 |table.ch|aracters|
|00002000| 2e 1f 0a 28 64 65 66 61 | 6c 69 61 73 20 27 63 75 |...(defa|lias 'cu|
|00002010| 73 74 6f 6d 2d 66 6f 72 | 6d 61 74 20 23 5b 28 66 |stom-for|mat #[(f|
|00002020| 6d 74 20 26 72 65 73 74 | 20 61 72 67 73 29 20 22 |mt &rest| args) "|
|00002030| c0 c1 5c 6e c3 c4 0d 5c | 22 23 87 22 20 5b 61 70 |..\n...\|"#." [ap|
|00002040| 70 6c 79 20 43 50 3a 3a | 6f 72 69 67 69 6e 61 6c |ply CP::|original|
|00002050| 2d 66 6f 72 6d 61 74 20 | 66 6d 74 20 6d 61 70 63 |-format |fmt mapc|
|00002060| 61 72 20 23 5b 28 61 72 | 67 29 20 22 08 3c ac 89 |ar #[(ar|g) ".<..|
|00002070| c1 08 21 ac 84 08 39 ab | 84 c2 08 21 87 08 87 22 |..!...9.|...!..."|
|00002080| 20 5b 61 72 67 20 76 65 | 63 74 6f 72 70 20 63 75 | [arg ve|ctorp cu|
|00002090| 73 74 6f 6d 2d 70 72 69 | 6e 31 2d 74 6f 2d 73 74 |stom-pri|n1-to-st|
|000020a0| 72 69 6e 67 5d 20 32 5d | 20 61 72 67 73 5d 20 36 |ring] 2]| args] 6|
|000020b0| 20 28 23 24 20 2e 20 37 | 33 34 35 29 5d 29 0a 23 | (#$ . 7|345)]).#|
|000020c0| 40 34 39 35 20 50 72 69 | 6e 74 20 61 20 6f 6e 65 |@495 Pri|nt a one|
|000020d0| 2d 6c 69 6e 65 20 6d 65 | 73 73 61 67 65 20 61 74 |-line me|ssage at|
|000020e0| 20 74 68 65 20 62 6f 74 | 74 6f 6d 20 6f 66 20 74 | the bot|tom of t|
|000020f0| 68 65 20 73 63 72 65 65 | 6e 2e 0a 54 68 65 20 66 |he scree|n..The f|
|00002100| 69 72 73 74 20 61 72 67 | 75 6d 65 6e 74 20 69 73 |irst arg|ument is|
|00002110| 20 61 20 63 6f 6e 74 72 | 6f 6c 20 73 74 72 69 6e | a contr|ol strin|
|00002120| 67 2e 0a 49 74 20 6d 61 | 79 20 63 6f 6e 74 61 69 |g..It ma|y contai|
|00002130| 6e 20 25 73 20 6f 72 20 | 25 64 20 6f 72 20 25 63 |n %s or |%d or %c|
|00002140| 20 74 6f 20 70 72 69 6e | 74 20 73 75 63 63 65 73 | to prin|t succes|
|00002150| 73 69 76 65 20 66 6f 6c | 6c 6f 77 69 6e 67 20 61 |sive fol|lowing a|
|00002160| 72 67 75 6d 65 6e 74 73 | 2e 0a 25 73 20 6d 65 61 |rguments|..%s mea|
|00002170| 6e 73 20 70 72 69 6e 74 | 20 61 6e 20 61 72 67 75 |ns print| an argu|
|00002180| 6d 65 6e 74 20 61 73 20 | 61 20 73 74 72 69 6e 67 |ment as |a string|
|00002190| 2c 20 25 64 20 6d 65 61 | 6e 73 20 70 72 69 6e 74 |, %d mea|ns print|
|000021a0| 20 61 73 20 6e 75 6d 62 | 65 72 20 69 6e 20 64 65 | as numb|er in de|
|000021b0| 63 69 6d 61 6c 2c 0a 25 | 63 20 6d 65 61 6e 73 20 |cimal,.%|c means |
|000021c0| 70 72 69 6e 74 20 61 20 | 6e 75 6d 62 65 72 20 61 |print a |number a|
|000021d0| 73 20 61 20 73 69 6e 67 | 6c 65 20 63 68 61 72 61 |s a sing|le chara|
|000021e0| 63 74 65 72 2e 0a 54 68 | 65 20 61 72 67 75 6d 65 |cter..Th|e argume|
|000021f0| 6e 74 20 75 73 65 64 20 | 62 79 20 25 73 20 6d 75 |nt used |by %s mu|
|00002200| 73 74 20 62 65 20 61 20 | 73 74 72 69 6e 67 20 6f |st be a |string o|
|00002210| 72 20 61 20 73 79 6d 62 | 6f 6c 3b 0a 74 68 65 20 |r a symb|ol;.the |
|00002220| 61 72 67 75 6d 65 6e 74 | 20 75 73 65 64 20 62 79 |argument| used by|
|00002230| 20 25 64 20 6f 72 20 25 | 63 20 6d 75 73 74 20 62 | %d or %|c must b|
|00002240| 65 20 61 20 6e 75 6d 62 | 65 72 2e 0a 0a 54 68 69 |e a numb|er...Thi|
|00002250| 73 20 69 73 20 74 68 65 | 20 63 75 73 74 6f 6d 2d |s is the| custom-|
|00002260| 70 72 69 6e 74 20 72 65 | 70 6c 61 63 65 6d 65 6e |print re|placemen|
|00002270| 74 20 66 6f 72 20 74 68 | 65 20 73 74 61 6e 64 61 |t for th|e standa|
|00002280| 72 64 20 60 6d 65 73 73 | 61 67 65 27 2e 0a 53 65 |rd `mess|age'..Se|
|00002290| 65 20 60 63 75 73 74 6f | 6d 2d 66 6f 72 6d 61 74 |e `custo|m-format|
|000022a0| 27 20 66 6f 72 20 74 68 | 65 20 64 65 74 61 69 6c |' for th|e detail|
|000022b0| 73 2e 1f 0a 28 64 65 66 | 61 6c 69 61 73 20 27 63 |s...(def|alias 'c|
|000022c0| 75 73 74 6f 6d 2d 6d 65 | 73 73 61 67 65 20 23 5b |ustom-me|ssage #[|
|000022d0| 28 66 6d 74 20 26 72 65 | 73 74 20 61 72 67 73 29 |(fmt &re|st args)|
|000022e0| 20 22 c0 c1 5c 6e c3 c4 | 0d 5c 22 23 87 22 20 5b | "..\n..|.\"#." [|
|000022f0| 61 70 70 6c 79 20 43 50 | 3a 3a 6f 72 69 67 69 6e |apply CP|::origin|
|00002300| 61 6c 2d 6d 65 73 73 61 | 67 65 20 66 6d 74 20 6d |al-messa|ge fmt m|
|00002310| 61 70 63 61 72 20 23 5b | 28 61 72 67 29 20 22 08 |apcar #[|(arg) ".|
|00002320| 3c ac 89 c1 08 21 ac 84 | 08 39 ab 84 c2 08 21 87 |<....!..|.9....!.|
|00002330| 08 87 22 20 5b 61 72 67 | 20 76 65 63 74 6f 72 70 |.." [arg| vectorp|
|00002340| 20 63 75 73 74 6f 6d 2d | 70 72 69 6e 31 2d 74 6f | custom-|prin1-to|
|00002350| 2d 73 74 72 69 6e 67 5d | 20 32 5d 20 61 72 67 73 |-string]| 2] args|
|00002360| 5d 20 36 20 28 23 24 20 | 2e 20 38 33 38 39 29 5d |] 6 (#$ |. 8389)]|
|00002370| 29 0a 23 40 31 37 33 20 | 53 69 67 6e 61 6c 20 61 |).#@173 |Signal a|
|00002380| 6e 20 65 72 72 6f 72 2c | 20 6d 61 6b 69 6e 67 20 |n error,| making |
|00002390| 65 72 72 6f 72 20 6d 65 | 73 73 61 67 65 20 62 79 |error me|ssage by|
|000023a0| 20 70 61 73 73 69 6e 67 | 20 61 6c 6c 20 61 72 67 | passing| all arg|
|000023b0| 73 20 74 6f 20 60 66 6f | 72 6d 61 74 27 2e 0a 0a |s to `fo|rmat'...|
|000023c0| 54 68 69 73 20 69 73 20 | 74 68 65 20 63 75 73 74 |This is |the cust|
|000023d0| 6f 6d 2d 70 72 69 6e 74 | 20 72 65 70 6c 61 63 65 |om-print| replace|
|000023e0| 6d 65 6e 74 20 66 6f 72 | 20 74 68 65 20 73 74 61 |ment for| the sta|
|000023f0| 6e 64 61 72 64 20 60 65 | 72 72 6f 72 27 2e 0a 53 |ndard `e|rror'..S|
|00002400| 65 65 20 60 63 75 73 74 | 6f 6d 2d 66 6f 72 6d 61 |ee `cust|om-forma|
|00002410| 74 27 20 66 6f 72 20 74 | 68 65 20 64 65 74 61 69 |t' for t|he detai|
|00002420| 6c 73 2e 1f 0a 28 64 65 | 66 61 6c 69 61 73 20 27 |ls...(de|falias '|
|00002430| 63 75 73 74 6f 6d 2d 65 | 72 72 6f 72 20 23 5b 28 |custom-e|rror #[(|
|00002440| 66 6d 74 20 26 72 65 73 | 74 20 61 72 67 73 29 20 |fmt &res|t args) |
|00002450| 22 c0 c1 c2 c3 0c 0d 23 | 43 5c 22 87 22 20 5b 73 |"......#|C\"." [s|
|00002460| 69 67 6e 61 6c 20 65 72 | 72 6f 72 20 61 70 70 6c |ignal er|ror appl|
|00002470| 79 20 63 75 73 74 6f 6d | 2d 66 6f 72 6d 61 74 20 |y custom|-format |
|00002480| 66 6d 74 20 61 72 67 73 | 5d 20 36 20 28 23 24 20 |fmt args|] 6 (#$ |
|00002490| 2e 20 39 30 38 30 29 5d | 29 0a 28 62 79 74 65 2d |. 9080)]|).(byte-|
|000024a0| 63 6f 64 65 20 22 c0 09 | 42 11 c2 09 42 11 c0 87 |code "..|B...B...|
|000024b0| 22 20 5b 63 69 72 63 6c | 65 2d 74 61 62 6c 65 20 |" [circl|e-table |
|000024c0| 63 75 72 72 65 6e 74 2d | 6c 6f 61 64 2d 6c 69 73 |current-|load-lis|
|000024d0| 74 20 43 50 3a 3a 63 75 | 72 72 65 6e 74 2d 6c 65 |t CP::cu|rrent-le|
|000024e0| 76 65 6c 5d 20 32 29 0a | 28 64 65 66 61 6c 69 61 |vel] 2).|(defalia|
|000024f0| 73 20 27 43 50 3a 3a 6f | 72 69 67 69 6e 61 6c 2d |s 'CP::o|riginal-|
|00002500| 70 72 69 6e 74 65 72 20 | 23 5b 28 6f 62 6a 65 63 |printer |#[(objec|
|00002510| 74 29 20 22 c0 87 22 20 | 5b 6e 69 6c 5d 20 31 5d |t) ".." |[nil] 1]|
|00002520| 29 0a 28 64 65 66 61 6c | 69 61 73 20 27 43 50 3a |).(defal|ias 'CP:|
|00002530| 3a 6c 6f 77 2d 6c 65 76 | 65 6c 2d 70 72 69 6e 20 |:low-lev|el-prin |
|00002540| 23 5b 28 6f 62 6a 65 63 | 74 29 20 22 c0 87 22 20 |#[(objec|t) ".." |
|00002550| 5b 6e 69 6c 5d 20 31 5d | 29 0a 28 64 65 66 61 6c |[nil] 1]|).(defal|
|00002560| 69 61 73 20 27 43 50 3a | 3a 70 72 69 6e 20 23 5b |ias 'CP:|:prin #[|
|00002570| 28 6f 62 6a 65 63 74 29 | 20 22 c0 87 22 20 5b 6e |(object)| ".." [n|
|00002580| 69 6c 5d 20 31 5d 29 0a | 28 64 65 66 61 6c 69 61 |il] 1]).|(defalia|
|00002590| 73 20 27 43 50 3a 3a 74 | 6f 70 2d 6c 65 76 65 6c |s 'CP::t|op-level|
|000025a0| 20 23 5b 28 6f 62 6a 65 | 63 74 20 73 74 72 65 61 | #[(obje|ct strea|
|000025b0| 6d 20 65 6d 61 63 73 2d | 70 72 69 6e 74 65 72 29 |m emacs-|printer)|
|000025c0| 20 22 08 ae 81 09 5c 6e | ad 83 c3 0c 21 0d ae 81 | "....\n|....!...|
|000025d0| c6 1e 07 1e 08 19 c9 ca | 0e 0b 5c 22 88 c9 cc 0e |........|..\"....|
|000025e0| 0d ac 92 0e 08 ac 8e 0d | ac 8b 0e 0e ab 8a 0d ac |........|........|
|000025f0| 84 0e 0f ab 83 d0 aa 81 | ca 5c 22 88 c9 d1 0e 08 |........|.\".....|
|00002600| ab 83 d2 aa 81 cc 5c 22 | 88 d1 0c 21 88 0c 2b 87 |......\"|...!..+.|
|00002610| 22 20 5b 73 74 72 65 61 | 6d 20 73 74 61 6e 64 61 |" [strea|m standa|
|00002620| 72 64 2d 6f 75 74 70 75 | 74 20 70 72 69 6e 74 2d |rd-outpu|t print-|
|00002630| 63 69 72 63 6c 65 20 43 | 50 3a 3a 70 72 65 70 72 |circle C|P::prepr|
|00002640| 6f 63 65 73 73 2d 63 69 | 72 63 6c 65 2d 74 72 65 |ocess-ci|rcle-tre|
|00002650| 65 20 6f 62 6a 65 63 74 | 20 70 72 69 6e 74 2d 6c |e object| print-l|
|00002660| 65 76 65 6c 20 2d 31 20 | 43 50 3a 3a 63 75 72 72 |evel -1 |CP::curr|
|00002670| 65 6e 74 2d 6c 65 76 65 | 6c 20 63 69 72 63 6c 65 |ent-leve|l circle|
|00002680| 2d 74 61 62 6c 65 20 64 | 65 66 61 6c 69 61 73 20 |-table d|efalias |
|00002690| 43 50 3a 3a 6f 72 69 67 | 69 6e 61 6c 2d 70 72 69 |CP::orig|inal-pri|
|000026a0| 6e 74 65 72 20 65 6d 61 | 63 73 2d 70 72 69 6e 74 |nter ema|cs-print|
|000026b0| 65 72 20 43 50 3a 3a 6c | 6f 77 2d 6c 65 76 65 6c |er CP::l|ow-level|
|000026c0| 2d 70 72 69 6e 20 63 75 | 73 74 6f 6d 2d 70 72 69 |-prin cu|stom-pri|
|000026d0| 6e 74 65 72 73 20 63 75 | 73 74 6f 6d 2d 70 72 69 |nters cu|stom-pri|
|000026e0| 6e 74 2d 76 65 63 74 6f | 72 73 20 70 72 69 6e 74 |nt-vecto|rs print|
|000026f0| 2d 6c 65 6e 67 74 68 20 | 43 50 3a 3a 70 72 69 6e |-length |CP::prin|
|00002700| 74 2d 6f 62 6a 65 63 74 | 20 43 50 3a 3a 70 72 69 |t-object| CP::pri|
|00002710| 6e 20 43 50 3a 3a 70 72 | 69 6e 74 2d 63 69 72 63 |n CP::pr|int-circ|
|00002720| 75 6c 61 72 5d 20 33 5d | 29 0a 28 64 65 66 61 6c |ular] 3]|).(defal|
|00002730| 69 61 73 20 27 43 50 3a | 3a 70 72 69 6e 74 2d 6f |ias 'CP:|:print-o|
|00002740| 62 6a 65 63 74 20 23 5b | 28 6f 62 6a 65 63 74 29 |bject #[|(object)|
|00002750| 20 22 08 ac 84 c1 08 21 | 87 c2 08 21 ab 82 08 87 | ".....!|...!....|
|00002760| 08 3a ab 84 c3 08 21 87 | c4 08 21 ab 84 c5 08 21 |.:....!.|..!....!|
|00002770| 87 c1 08 21 87 22 20 5b | 6f 62 6a 65 63 74 20 43 |...!." [|object C|
|00002780| 50 3a 3a 6f 72 69 67 69 | 6e 61 6c 2d 70 72 69 6e |P::origi|nal-prin|
|00002790| 74 65 72 20 43 50 3a 3a | 75 73 65 2d 63 75 73 74 |ter CP::|use-cust|
|000027a0| 6f 6d 2d 70 72 69 6e 74 | 65 72 20 43 50 3a 3a 6c |om-print|er CP::l|
|000027b0| 69 73 74 20 76 65 63 74 | 6f 72 70 20 43 50 3a 3a |ist vect|orp CP::|
|000027c0| 76 65 63 74 6f 72 5d 20 | 32 5d 29 0a 28 64 65 66 |vector] |2]).(def|
|000027d0| 61 6c 69 61 73 20 27 43 | 50 3a 3a 70 72 69 6e 74 |alias 'C|P::print|
|000027e0| 2d 63 69 72 63 75 6c 61 | 72 20 23 5b 28 6f 62 6a |-circula|r #[(obj|
|000027f0| 65 63 74 29 20 22 08 09 | b7 89 1a ab ad 5c 6e 41 |ect) "..|.....\nA|
|00002800| 89 1b c4 56 ab 8d c5 c6 | 21 88 c5 0b 21 88 c5 c6 |...V....|!...!...|
|00002810| 21 aa 95 5c 6e 0b 5b a1 | 88 c5 c6 21 88 c5 0b 5b |!..\n.[.|...!...[|
|00002820| 21 88 c5 c7 21 88 c8 08 | 21 29 aa 83 c8 08 21 29 |!...!...|!)....!)|
|00002830| 87 22 20 5b 6f 62 6a 65 | 63 74 20 63 69 72 63 6c |." [obje|ct circl|
|00002840| 65 2d 74 61 62 6c 65 20 | 74 61 67 20 69 64 20 30 |e-table |tag id 0|
|00002850| 20 43 50 3a 3a 6f 72 69 | 67 69 6e 61 6c 2d 70 72 | CP::ori|ginal-pr|
|00002860| 69 6e 63 20 22 23 22 20 | 22 3d 22 20 43 50 3a 3a |inc "#" |"=" CP::|
|00002870| 6c 6f 77 2d 6c 65 76 65 | 6c 2d 70 72 69 6e 5d 20 |low-leve|l-prin] |
|00002880| 33 5d 29 0a 28 64 65 66 | 61 6c 69 61 73 20 27 43 |3]).(def|alias 'C|
|00002890| 50 3a 3a 6c 69 73 74 20 | 23 5b 28 6c 69 73 74 29 |P::list |#[(list)|
|000028a0| 20 22 08 c1 55 ab 86 c2 | c3 21 88 aa f5 08 53 18 | "..U...|.!....S.|
|000028b0| c2 c4 21 88 0d ae 81 c1 | 1e 06 c7 0e 08 40 21 88 |..!.....|.....@!.|
|000028c0| 0e 08 41 89 16 08 ab 84 | c2 c9 21 88 0e 06 53 16 |..A.....|..!...S.|
|000028d0| 06 0e 08 ab ba 0e 06 c1 | 55 ac b4 0e 08 3c ab 94 |........|U....<..|
|000028e0| 0e 08 0e 5c 6e b7 ac 8d | c7 0e 08 40 21 88 0e 08 |...\n...|...@!...|
|000028f0| 41 16 08 aa 8c c2 cb 21 | 88 c7 0e 08 21 88 cc 16 |A......!|....!...|
|00002900| 08 0e 06 53 16 06 0e 08 | ab 48 c2 c9 21 88 aa 42 |...S....|.H..!..B|
|00002910| 0e 08 ab 8a 0e 06 c1 55 | ab 84 c2 cd 21 88 c2 ce |.......U|....!...|
|00002920| 21 88 2a 0e 08 87 22 20 | 5b 43 50 3a 3a 63 75 72 |!.*..." |[CP::cur|
|00002930| 72 65 6e 74 2d 6c 65 76 | 65 6c 20 30 20 43 50 3a |rent-lev|el 0 CP:|
|00002940| 3a 6f 72 69 67 69 6e 61 | 6c 2d 70 72 69 6e 63 20 |:origina|l-princ |
|00002950| 22 23 22 20 22 28 22 20 | 70 72 69 6e 74 2d 6c 65 |"#" "(" |print-le|
|00002960| 6e 67 74 68 20 6c 65 6e | 67 74 68 20 43 50 3a 3a |ngth len|gth CP::|
|00002970| 70 72 69 6e 20 6c 69 73 | 74 20 22 20 22 20 63 69 |prin lis|t " " ci|
|00002980| 72 63 6c 65 2d 74 61 62 | 6c 65 20 22 2e 20 22 20 |rcle-tab|le ". " |
|00002990| 6e 69 6c 20 22 2e 2e 2e | 22 20 22 29 22 5d 20 33 |nil "...|" ")"] 3|
|000029a0| 5d 29 0a 28 64 65 66 61 | 6c 69 61 73 20 27 43 50 |]).(defa|lias 'CP|
|000029b0| 3a 3a 76 65 63 74 6f 72 | 20 23 5b 28 76 65 63 74 |::vector| #[(vect|
|000029c0| 6f 72 29 20 22 08 c1 55 | ab 86 c2 c3 21 88 aa c4 |or) "..U|....!...|
|000029d0| 08 53 c1 0c 47 1d 1e 06 | 18 c2 c7 21 88 0e 08 ab |.S..G...|...!....|
|000029e0| 85 0e 08 0d 5e 15 0e 06 | 0d 57 ab 98 c9 0c 0e 06 |....^...|.W......|
|000029f0| 48 21 88 0e 06 54 89 16 | 06 0c 47 57 ab 68 c2 ca |H!...T..|..GW.h..|
|00002a00| 21 88 aa 62 0e 06 0c 47 | 57 ab 84 c2 cb 21 88 c2 |!..b...G|W....!..|
|00002a10| cc 21 88 2b 0c 87 22 20 | 5b 43 50 3a 3a 63 75 72 |.!.+.." |[CP::cur|
|00002a20| 72 65 6e 74 2d 6c 65 76 | 65 6c 20 30 20 43 50 3a |rent-lev|el 0 CP:|
|00002a30| 3a 6f 72 69 67 69 6e 61 | 6c 2d 70 72 69 6e 63 20 |:origina|l-princ |
|00002a40| 22 23 22 20 76 65 63 74 | 6f 72 20 6c 65 6e 20 69 |"#" vect|or len i|
|00002a50| 20 22 5b 22 20 70 72 69 | 6e 74 2d 6c 65 6e 67 74 | "[" pri|nt-lengt|
|00002a60| 68 20 43 50 3a 3a 70 72 | 69 6e 20 22 20 22 20 22 |h CP::pr|in " " "|
|00002a70| 2e 2e 2e 22 20 22 5d 22 | 5d 20 34 5d 29 0a 28 64 |..." "]"|] 4]).(d|
|00002a80| 65 66 61 6c 69 61 73 20 | 27 43 50 3a 3a 70 72 65 |efalias |'CP::pre|
|00002a90| 70 72 6f 63 65 73 73 2d | 63 69 72 63 6c 65 2d 74 |process-|circle-t|
|00002aa0| 72 65 65 20 23 5b 28 6f | 62 6a 65 63 74 29 20 22 |ree #[(o|bject) "|
|00002ab0| c0 43 19 c2 0b 21 88 09 | 89 41 9f a1 88 09 c4 1d |.C...!..|.A......|
|00002ac0| 1e 06 0e 06 41 ab a3 0e | 06 41 40 89 1e 07 41 ab |....A...|.A@...A.|
|00002ad0| 8f 0e 07 0d a1 88 0d 53 | 15 0e 06 41 16 06 aa 87 |.......S|...A....|
|00002ae0| 0e 06 89 41 41 a1 88 29 | aa 58 2a 09 41 29 87 22 |...AA..)|.X*.A)."|
|00002af0| 20 5b 6e 69 6c 20 63 69 | 72 63 6c 65 2d 74 61 62 | [nil ci|rcle-tab|
|00002b00| 6c 65 20 43 50 3a 3a 77 | 61 6c 6b 2d 63 69 72 63 |le CP::w|alk-circ|
|00002b10| 6c 65 2d 74 72 65 65 20 | 6f 62 6a 65 63 74 20 2d |le-tree |object -|
|00002b20| 31 20 69 64 20 72 65 73 | 74 20 74 61 67 5d 20 33 |1 id res|t tag] 3|
|00002b30| 5d 29 0a 28 64 65 66 61 | 6c 69 61 73 20 27 43 50 |]).(defa|lias 'CP|
|00002b40| 3a 3a 77 61 6c 6b 2d 63 | 69 72 63 6c 65 2d 74 72 |::walk-c|ircle-tr|
|00002b50| 65 65 20 23 5b 28 6f 62 | 6a 65 63 74 29 20 22 c0 |ee #[(ob|ject) ".|
|00002b60| 89 19 1a 0b ad eb 0b a7 | ae 8b 0b 39 ad 87 0b c4 |........|...9....|
|00002b70| c5 0b 21 21 61 89 12 3f | ad 85 0b 0e 06 41 b7 89 |..!!a..?|.....A..|
|00002b80| 11 ab 86 09 c7 a1 88 aa | 8d 5c 6e ac 8a 0e 06 0b |........|.\n.....|
|00002b90| 43 0e 06 41 42 a1 88 09 | ab 83 c0 aa b0 0b 3a ab |C..AB...|......:.|
|00002ba0| 89 c8 0b 40 21 88 0b 41 | aa a3 c9 0b 21 ad 9e 0b |...@!..A|....!...|
|00002bb0| 47 ca 1e 0b 1e 0c 0e 0b | 0e 0c 57 ad 8f c8 0b 0e |G.......|..W.....|
|00002bc0| 0b 48 21 88 0e 0b 54 89 | 16 0b aa 6c 2a 89 13 ac |.H!...T.|...l*...|
|00002bd0| 16 c0 2a 87 22 20 5b 6e | 69 6c 20 74 61 67 20 72 |..*." [n|il tag r|
|00002be0| 65 61 64 2d 65 71 75 69 | 76 61 6c 65 6e 74 2d 70 |ead-equi|valent-p|
|00002bf0| 20 6f 62 6a 65 63 74 20 | 69 6e 74 65 72 6e 2d 73 | object |intern-s|
|00002c00| 6f 66 74 20 73 79 6d 62 | 6f 6c 2d 6e 61 6d 65 20 |oft symb|ol-name |
|00002c10| 63 69 72 63 6c 65 2d 74 | 61 62 6c 65 20 74 20 43 |circle-t|able t C|
|00002c20| 50 3a 3a 77 61 6c 6b 2d | 63 69 72 63 6c 65 2d 74 |P::walk-|circle-t|
|00002c30| 72 65 65 20 76 65 63 74 | 6f 72 70 20 30 20 6a 20 |ree vect|orp 0 j |
|00002c40| 69 5d 20 35 5d 29 0a 28 | 70 72 6f 76 69 64 65 20 |i] 5]).(|provide |
|00002c50| 27 63 75 73 74 2d 70 72 | 69 6e 74 29 0a |'cust-pr|int). |
+--------+-------------------------+-------------------------+--------+--------+